package hos.task;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * <p>Title: PagingData </p>
 * <p>Description:  </p>
 * <p>Company: www.mapuni.com </p>
 *
 * @author : 蔡俊峰
 * @version : 1.0
 * @date : 2023-02-03 10:12
 */
final class PagingData<T> {
    /// 第一页
    int startIndex = 1;

    /// 分页的页数
    int pageIndex = 1;

    /// 每页的数量
    int pageSize = 30;

    /// 最新一页的数量
    int newSize = 30;

    /// 请求参数
    final Map<String, Object> paramMap = new HashMap<>();
    /// 请求参数
    final Map<String, Object> commonParamMap = new HashMap<>();
    /// 请求参数
    final List<Object> paramList = new ArrayList<>();

    /// 请求参数
    final List<Object> commonParamList = new ArrayList<>();

    // /// 用于列表刷新的id
    // Object refreshId = Object();

    /// 列表数据
    final List<T> data = new ArrayList<>();

    /// 判断是不是空
    boolean isEmpty() {
        return data.isEmpty();
    }

    /// 不是空
    boolean isNotEmpty() {
        return !isEmpty();
    }

    /// 数量
    int count() {
        return data.size();
    }

    /**
     * 清空
     */
    void clear() {
        paramMap.clear();
        paramList.clear();
        commonParamMap.clear();
        commonParamList.clear();
        data.clear();
    }
}
